package org.scub.foundation.fournisseur.egicom.core.dao.interfaces;

import java.util.List;

import org.scub.foundation.fournisseur.egicom.core.model.Produit;

/**
 * Interface d'accès aux données pour l'entité persistante Produit.
 */
public interface ProduitDao {

    /**
     * Créé un produit.
     * @param produit le produit à créer.
     */
    void createProduit(Produit produit);

    /**
     * Supprime un produit.
     * @param produit le peroduit à supprimer.
     */
    void deleteProduit(Produit produit);

    /**
     * Récupère le produit correspondant à l'identifiant unique spécifié.
     * @param idProduit identifiant du produit
     * @return le produit trouvé.
     */
    Produit getProduitById(Long idProduit);

    /**
     * Récupère tous les produit.
     * @return collection contenant tous les produit.
     */
    List<Produit> getAllProduits();

}
